A class of embedded systems exists which presents critical requirements to the tradeoff between instruction code density and performance of those systems. There is a great need for a framework and an automated solution for finding the best cost-performance balance between all the components involved. It should be recognized that customizing and adjusting an original instruction set architecture (ISA) to fit the needs and requirements of each particular application can be done by hand on a case by case basis to yield a near optimal solution. However, the costs of such an approach may be unacceptably high. Thus, it will be recognized that reducing human involvement will be highly desirable.